package com.feri.project.service.intf;

import com.feri.project.dto.UserLoginDto;
import com.feri.project.entity.User;
import com.feri.project.vo.R;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletResponse;

/**
 * .::::.
 * .::::::::.
 * :::::::::::  I && YOU
 * ..:::::::::::'
 * '::::::::::::'
 * .::::::::::
 * '::::::::::::::..
 * ..::::::::::::.
 * ``::::::::::::::::
 * ::::``:::::::::'        .:::.
 * ::::'   ':::::'       .::::::::.
 * .::::'      ::::     .:::::::'::::.
 * .:::'       :::::  .:::::::::' ':::::.
 * .::'        :::::.:::::::::'      ':::::.
 * .::'         ::::::::::::::'         ``::::.
 * ...:::           ::::::::::::'              ``::.
 * ````':.          ':::::::::'                  ::::..
 * '.:::::'                    ':'````..
 * ━━━━━━永无BUG!━━━━━━
 *
 * @Description:
 * @Author: 邢朋辉
 * @Date: 2023/3/3 14:55
 */
public interface UserService {
    /**
     * 新增
     * @param user 新增的用户对象*/
    R save(User user);
    /**
     * 删除
     * @param id 要删除用户的id*/
    R delete(int id);
    /**
     * 修改
     * @param user 要修改的用户对象*/
    R update(User user);
    /**
     * 查询 分页
     * @param page 要查询的页数
     * @param size 每页显示的数量*/
    R queryPage(int page,int size);
    /**
     * 实现登录*/
    R login(UserLoginDto dto);

    /**
     * Excel导入*/
    R importData(MultipartFile file);

    /**
     * Excel导出*/
    void exportData(HttpServletResponse response);
}
